<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">

	<CodeSnippet Format="1.0.0">
		<Header>
			<Title>Read Key</Title>
			<Shortcut>cr</Shortcut>
			<SnippetTypes>
				<SnippetType>Expansion</SnippetType>
			</SnippetTypes>
		</Header>
		<Snippet>
			<Code Language="CSharp"><![CDATA[Console.ReadKey();
			$end$]]></Code>
		</Snippet>
	</CodeSnippet>

  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>check string argument</Title>
      <Shortcut>chs</Shortcut>
      <SnippetTypes>
        <SnippetType>Expansion</SnippetType>
      </SnippetTypes>
    </Header>
    <Snippet>
      <Declarations>
        <Literal>
          <ID>variable</ID>
          <Default>variableName</Default>
        </Literal>
      </Declarations>
      <Code Language="CSharp">
        <![CDATA[if ($variable$ == null)
  throw new ArgumentNullException("$variable$");
if ($variable$.Length == 0)
  throw new ArgumentException("Argument $variable$ cannot be empty.");$end$]]>
      </Code>
    </Snippet>
  </CodeSnippet>

	<CodeSnippet Format="1.0.0">
		<Header>
			<Title>Throw not implemented exception</Title>
			<Shortcut>ni</Shortcut>
			<SnippetTypes>
				<SnippetType>Expansion</SnippetType>
			</SnippetTypes>
		</Header>
		<Snippet>
			<Code Language="CSharp">
				<![CDATA[throw new NotImplementedException("Method not implemented.");$end$]]>
			</Code>
		</Snippet>
	</CodeSnippet>

	<CodeSnippet Format="1.0.0">
		<Header>
			<Title>Debug Assert not null</Title>
			<Shortcut>da</Shortcut>
			<SnippetTypes>
				<SnippetType>Expansion</SnippetType>
			</SnippetTypes>
		</Header>
		<Snippet>
			<Declarations>
				<Literal>
					<ID>variable</ID>
					<Default>variableName</Default>
				</Literal>
			</Declarations>
			<Code Language="CSharp">
				<![CDATA[Debug.Assert($variable$ != null, "Argument $variable$ cannot be null.");
			$end$]]>
			</Code>
		</Snippet>
	</CodeSnippet>

  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>System.Linq Using</Title>
      <Shortcut>ul</Shortcut>
      <Description>Inserts System.Linq using statement</Description>
      <SnippetTypes>
        <SnippetType>Expansion</SnippetType>
      </SnippetTypes>
    </Header>
    <Snippet>
      <Code Language="CSharp">
        <![CDATA[using System.Linq;$end$]]>
      </Code>
    </Snippet>
  </CodeSnippet>
  
  	<CodeSnippet Format="1.0.0">
  		<Header>
  			<Title>propOLD</Title>
  			<Shortcut>pold</Shortcut>
  			<Description>Code snippet for a longhand property</Description>
  			<Author>Daniel Moth</Author>
  			<SnippetTypes>
  				<SnippetType>Expansion</SnippetType>
  			</SnippetTypes>
  		</Header>
  		<Snippet>
  			<Declarations>
  				<Literal>
  					<ID>field</ID>
  					<ToolTip>backing store</ToolTip>
  					<Default>mProp</Default>
  				</Literal>
  				<Literal>
  					<ID>type</ID>
  					<ToolTip>Property type</ToolTip>
  					<Default>int</Default>
  				</Literal>
  				<Literal>
  					<ID>property</ID>
  					<ToolTip>Property name</ToolTip>
  					<Default>MyProperty</Default>
  				</Literal>
  			</Declarations>
  			<Code Language="csharp"><![CDATA[private $type$ $field$;
  			public $type$ $property$ 
  			{ 
  				get 
  				{
  					return $field$;
				} 
  				set 
  				{
  					$field$ = value;
  				} 
  			}
  
  			$end$]]>
  			</Code>
  		</Snippet>
  	</CodeSnippet>

</CodeSnippets>
